package cn.fl.fgi.transform;

import cn.cmm.base.framework.utils.CollectionUtils;
import cn.fl.fgi.api.dto.FgiGuarRateDTO;
import cn.fl.fgi.vo.FgiGuarRateVO;

import java.util.ArrayList;
import java.util.List;

/**
 * @author hewangze
 * @version V1.0
 * @description 担保费率配置 Transform
 */

public class FgiGuarRateVOTransform {

    public static FgiGuarRateDTO toDTO(FgiGuarRateVO vo) {
        FgiGuarRateDTO dto = null;
        if (vo != null) {
            dto = new FgiGuarRateDTO();
            dto.setId(vo.getId());
            dto.setProgramNo(vo.getProgramNo());
            dto.setOrgNm(vo.getOrgNm());
            dto.setBusType(vo.getBusType());
            dto.setPrjType(vo.getPrjType());
            dto.setOrgPayBegin(vo.getOrgPayBegin());
            dto.setOrgPayEnd(vo.getOrgPayEnd());
            dto.setOverdueBeginDay(vo.getOverdueBeginDay());
            dto.setOverdueEndDay(vo.getOverdueEndDay());
            dto.setRepBegin(vo.getRepBegin());
            dto.setRepEnd(vo.getRepEnd());
            dto.setRepRate(vo.getRepRate());
            dto.setEnableBegin(vo.getEnableBegin());
            dto.setEnableEnd(vo.getEnableEnd());
            dto.setGuaranteeType(vo.getGuaranteeType());
            dto.setConfStatus(vo.getConfStatus());
            dto.setCrtTm(vo.getCrtTm());
            dto.setCrtUsrId(vo.getCrtUsrId());
            dto.setMdfTm(vo.getMdfTm());
            dto.setMdfUsrId(vo.getMdfUsrId());
            dto.setOrgId(vo.getOrgId());
            dto.setGuarTypCd(vo.getGuarTypCd());
        }
        return dto;
    }

    public static FgiGuarRateVO toVO(FgiGuarRateDTO dto) {
        FgiGuarRateVO vo = null;
        if (dto != null) {
            vo = new FgiGuarRateVO();
            vo.setId(dto.getId());
            vo.setProgramNo(dto.getProgramNo());
            vo.setOrgNm(dto.getOrgNm());
            vo.setBusType(dto.getBusType());
            vo.setPrjType(dto.getPrjType());
            vo.setOrgPayBegin(dto.getOrgPayBegin());
            vo.setOrgPayEnd(dto.getOrgPayEnd());
            vo.setOverdueBeginDay(dto.getOverdueBeginDay());
            vo.setOverdueEndDay(dto.getOverdueEndDay());
            vo.setRepBegin(dto.getRepBegin());
            vo.setRepEnd(dto.getRepEnd());
            vo.setRepRate(dto.getRepRate());
            vo.setEnableBegin(dto.getEnableBegin());
            vo.setEnableEnd(dto.getEnableEnd());
            vo.setGuaranteeType(dto.getGuaranteeType());
            vo.setConfStatus(dto.getConfStatus());
            vo.setCrtTm(dto.getCrtTm());
            vo.setCrtUsrId(dto.getCrtUsrId());
            vo.setMdfTm(dto.getMdfTm());
            vo.setMdfUsrId(dto.getMdfUsrId());
            vo.setOrgId(dto.getOrgId());
            vo.setGuarTypCd(dto.getGuarTypCd());
        }
        return vo;
    }

    /**
     * VO集合 转 DTO集合
     *
     * @param list List<FgiGuarRateVO>
     * @return List<FgiGuarRateDTO>
     */
    public static List<FgiGuarRateDTO> toDTOList(List<FgiGuarRateVO> list) {
        List<FgiGuarRateDTO> dtoList = new ArrayList<>();
        if (CollectionUtils.isNotEmpty(list)) {
            for (FgiGuarRateVO vo : list) {
                dtoList.add(toDTO(vo));
            }
        }
        return dtoList;
    }

    /**
     * DTO集合 转 VO集合
     *
     * @param list List<FgiGuarRateDTO>
     * @return List<FgiGuarRateVO>
     */
    public static List<FgiGuarRateVO> toVOList(List<FgiGuarRateDTO> list) {
        List<FgiGuarRateVO> voList = new ArrayList<>();
        if (CollectionUtils.isNotEmpty(list)) {
            for (FgiGuarRateDTO dto : list) {
                voList.add(toVO(dto));
            }
        }
        return voList;
    }
}
